The growing reliance on computers to manage information makes optimizing computers increasingly important. Certain software problems occur infrequently and on an unpredictable schedule. It is often desirable to diagnose these types of problems by storing one or more software events, also referred to as trace events, containing diagnostic data.
The vast amount of trace event information is usually not needed to diagnose a problem. Typically, only the trace event information generated just before and just after the problem is sufficient. Therefore, tracing sessions need to be started and left on until the problem occurs. This approach often suffers from side-effects. Many trace events produce a very large amount of information. So leaving these sessions on can cause system problems, such as filling all available space on the system.